#include <bits/stdc++.h>
using namespace std;

class bigint{
public:
	int data[100];
	int size;
	bigint(void){
		memset(data,0,sizeof(data));
		size=0;
	}
	bigint operator+(bigint a){
		bigint sub;
		int sign=this->size>a.size?this->size:a.size;
		for(int i=0;i<sign;i++){
			sub.data[i]+=this->data[i]+a.data[i];
			if(sub.data[i]>=10){
				sub.data[i]-=10;
				sub.data[i+1]+=1;
			}
		}
		if(sub.data[sign]==0)sub.size=sign;
		else sub.size=sign+1;
		return sub;
	}
//	bigint operator=(bigint a){
//		for(int i=0;i<1000;i++){
//			this->data[i]=a.data[i];
//		}
//		this->size=a.size;
//		return *this;
//	}
	bigint operator=(int a){
		int i=0;
		for(;a!=0;i++){
			this->data[i]=a%10;
			a/=10;
		}
		this->size=i;
		return *this;
	}
	void show(void){
		for(int i=size-1;i>=0;i--){
			cout<<data[i];
		}
		return;
	}
};

int main(void){
	bigint ans[1000];
	int a,b;
	memset(ans,0,sizeof(ans));
	ans[0]=1;
	ans[1]=1;
	cin>>a>>b;
	for(int i=2;i<=b-a;i++){
	ans[i]=ans[i-1]+ans[i-2];
//	if(ans[i]<0)cout<<"wrong";
	}
	ans[b-a].show();

	return 0;
}
